使用ARIMA(自回歸整合移動平均)模型來進行預測性健康維護(PHM)以預測設備的剩餘壽命是一個有效的方法。ARIMA模型可以用於時間序列數據,並且可以預測未來的數值。
import pandas as pd
import numpy as np
from statsmodels.tsa.arima.model import ARIMA
# 假設你有一個包含時間和設備狀態的數據集
# 這裡使用隨機數據模擬
np.random.seed(42)
date_rng = pd.date_range(start='2021-01-01', end='2021-12-31', freq='D')
status = np.random.randint(0, 2, size=len(date_rng))
# 創建一個DataFrame
df = pd.DataFrame({'Date': date_rng, 'Status': status})
# 以日期為索引
df.set_index('Date', inplace=True)
# 將數據轉換為時間序列(如果已經是時間序列,可以跳過這一步)
ts = df['Status']
# 初始化ARIMA模型
model = ARIMA(ts, order=(1, 1, 1))
# 適應模型
model_fit = model.fit()
# 進行未來壽命預測
forecast_steps = 10 # 預測未來的步數
forecast = model_fit.get_forecast(steps=forecast_steps)
# 獲取預測值和相應的置信區間
forecast_mean = forecast.predicted_mean
conf_int = forecast.conf_int()
# 打印預測值和置信區間
print(forecast_mean)
print(conf_int)